package cn.wolfcode.controller;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

/**
 * 跳转页面的 Controller
 * 因为我们所有的页面都在 templates 里面。不能直接访问，必须由 控制器接收请求后跳转
 */

@Controller // Spring 注解:将当前类创建对象并纳入到 Spring 容器中。
public class PageController {

    // 写一个方法。
    // 去登录页面
    // 需要实现的功能是跳转到登录页面。
    // 根据请求路径，来确定具体哪个方法来处理请求    // localhost:8000
    @GetMapping("/")    // 根据请求地址 ("/") 找到这个对应的方法来处理请求。
    public String index(){
        // 返回一个去 login.html 页面的路径
        return "login";     // 视图解析其中 前缀 classpath:/templates/    login    后缀 .html
    }

    // 去智能客服页面 （通用页面）
    // Model 是共享数据对象
    @GetMapping("/chat")
    public String chat(Model model){
        // 共享数据（给前端 title 赋值） 前面的名字必须与前端需要展示数据的名字一致，后面是需要展示的数据
        model.addAttribute("pageTitle","智能客服");
        // 共享数据（给前端导航列表添加活动样式）
        model.addAttribute("currentPath","/chat");
        // 共享数据（ main 主体部分的页面 ）
        model.addAttribute("content","chat/chat");
        // 返回一个去 /templates/   common/layout    .html 页面的路径
        return "common/layout";
    }

    // 去知识库页面 （通用页面）
    // Model 是共享数据对象
    @GetMapping("/document")
    public String document(Model model){
        // 共享数据（给前端 title 赋值） 前面的名字必须与前端需要展示数据的名字一致，后面是需要展示的数据
        model.addAttribute("pageTitle","知识库");
        // 共享数据（给前端导航列表添加活动样式）
        model.addAttribute("currentPath","/document");
        // 共享数据（ main 主体部分的页面 ）
        model.addAttribute("content","document/document");
        // 返回一个去 /templates/   common/layout    .html 页面的路径
        return "common/layout";
    }

}
